package com.gopay.common.domain.cps;

import java.math.BigDecimal;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import javax.persistence.Version;

/**
 * 核心处理中心 通用交易 辅助类订单明细表
 * 
 * @CpsGenAssistOrder.java
 * @author zhanglei
 * @2013-1-9 下午4:20:24 www.gopay.com.cn Inc.All rights reserved.
 */
@Entity
@Table(name = "CPS_GEN_ASSIST_ORDER")
public class CpsGenAssistOrder implements java.io.Serializable {
    private static final long serialVersionUID = 2002859294474079703L;
    private String gopayOrderId;
    private int version;
    private String otherRecvInfo;
    private Date createdTs;
    private Date lastUpdTs;
    private String lastUpdTrancode;
    private String remark1;
    private String remark2;
    private String returnAmtAcct;
    private BigDecimal merTiliuAmt;
    private String merTiliuAcct;
    private BigDecimal refundFeeAmt;
    private String tranInitator;
    private String refundBankOrderNum;
    private String refundRemark;
    private String tranComplainant;
    /**
     * 宣广海新加退款渠道字段
     */
    private String refundChannel;
    
    @Id
    @Column(name = "GOPAY_ORDER_ID", unique = true, nullable = false, length = 30)
    public String getGopayOrderId() {
        return this.gopayOrderId;
    }

    public void setGopayOrderId(String gopayOrderId) {
        this.gopayOrderId = gopayOrderId;
    }

    @Version
    @Column(name = "VERSION", nullable = false, precision = 22, scale = 0)
    public int getVersion() {
        return this.version;
    }

    public void setVersion(int version) {
        this.version = version;
    }

    @Column(name = "OTHER_RECV_INFO", length = 500)
    public String getOtherRecvInfo() {
        return this.otherRecvInfo;
    }

    public void setOtherRecvInfo(String otherRecvInfo) {
        this.otherRecvInfo = otherRecvInfo;
    }

    @Column(name = "CREATED_TS", nullable = false)
    @Temporal(TemporalType.TIMESTAMP)
    public Date getCreatedTs() {
        return this.createdTs;
    }

    public void setCreatedTs(Date createdTs) {
        this.createdTs = createdTs;
    }

    @Column(name = "LAST_UPD_TS", nullable = false)
    @Temporal(TemporalType.TIMESTAMP)
    public Date getLastUpdTs() {
        return this.lastUpdTs;
    }

    public void setLastUpdTs(Date lastUpdTs) {
        this.lastUpdTs = lastUpdTs;
    }

    @Column(name = "LAST_UPD_TRANCODE", length = 6)
    public String getLastUpdTrancode() {
        return this.lastUpdTrancode;
    }

    public void setLastUpdTrancode(String lastUpdTrancode) {
        this.lastUpdTrancode = lastUpdTrancode;
    }

    @Column(name = "REMARK1", length = 50)
    public String getRemark1() {
        return this.remark1;
    }

    public void setRemark1(String remark1) {
        this.remark1 = remark1;
    }

    @Column(name = "REMARK2", length = 50)
    public String getRemark2() {
        return this.remark2;
    }

    public void setRemark2(String remark2) {
        this.remark2 = remark2;
    }

    @Column(name = "RETURN_AMT_ACCT", length = 19)
    public String getReturnAmtAcct() {
        return returnAmtAcct;
    }

    public void setReturnAmtAcct(String returnAmtAcct) {
        this.returnAmtAcct = returnAmtAcct;
    }

    @Column(name = "MER_TILIU_AMT", nullable = true, precision = 20)
    public BigDecimal getMerTiliuAmt() {
        return merTiliuAmt;
    }

    public void setMerTiliuAmt(BigDecimal merTiliuAmt) {
        this.merTiliuAmt = merTiliuAmt;
    }

    @Column(name = "REFUND_FEE_AMT", precision = 20)
    public BigDecimal getRefundFeeAmt() {
        return refundFeeAmt;
    }

    public void setRefundFeeAmt(BigDecimal refundFeeAmt) {
        this.refundFeeAmt = refundFeeAmt;
    }

    @Column(name = "MER_TILIU_RECV_ACCT", length = 19)
    public String getMerTiliuAcct() {
        return merTiliuAcct;
    }

    public void setMerTiliuAcct(String merTiliuAcct) {
        this.merTiliuAcct = merTiliuAcct;
    }
    
    @Column(name = "TRAN_INITIATOR", length = 1)
    public String getTranInitator() {
        return tranInitator;
    }
    
    public void setTranInitator(String tranInitator) {
        this.tranInitator = tranInitator;
    }
    @Column(name="REFUND_BANK_ORDER_NUM",length=30)
    public String getRefundBankOrderNum() {
        return refundBankOrderNum;
    }
    public void setRefundBankOrderNum(String refundBankOrderNum) {
        this.refundBankOrderNum = refundBankOrderNum;
    }
    
    @Column(name="REFUND_REMARK",length=100)
    public String getRefundRemark() {
        return refundRemark;
    }
    
    public void setRefundRemark(String refundRemark) {
        this.refundRemark = refundRemark;
    }
    
    @Column(name="TRAN_COMPLAINANT",length=2)
    public String getTranComplainant() {
        return tranComplainant;
    }

    public void setTranComplainant(String tranComplainant) {
        this.tranComplainant = tranComplainant;
    }
    @Column(name="REFUND_CHANNEL",length=2)
	public String getRefundChannel() {
		return refundChannel;
	}

	public void setRefundChannel(String refundChannel) {
		this.refundChannel = refundChannel;
	}

    
    
}
